#pragma once
#include "SnRender.h"
#include <memory>
#include <vector>
#include "string"
#include "base/shader.h"

namespace Sivin {
  class TriangleRender : public SnRender {

  public:
    explicit TriangleRender();
    ~TriangleRender();

  public:
    virtual void onGLInit() override;

    virtual void onRender() override;

  private:
    std::unique_ptr<Shader> mShader{nullptr};
    std::vector<float> mVertices;
    //核心模式下必须使用VAO,否则将无法正确的绘制和渲染顶点数据
    GLuint mVAO{0};
  };
}// namespace Sivin